package com.example.mcp.config;

import org.springframework.ai.model.function.FunctionCallback;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

import java.util.List;

/**
 * 功能工具配置类
 * 注册自定义工具为Spring AI功能回调
 * 
 * @author Generated
 * @version 1.0.0
 */
@Configuration
public class McpFunctionConfig {

    /**
     * 注册功能回调列表
     * 获取所有可用的自定义工具并注册为功能回调
     * 
     * @param functionCallbacks 自动注入的所有FunctionCallback实现
     * @return 功能回调列表
     */
    @Bean
    public List<FunctionCallback> availableFunctions(List<FunctionCallback> functionCallbacks) {
        System.out.println("注册功能工具数量: " + functionCallbacks.size());
        
        for (FunctionCallback callback : functionCallbacks) {
            System.out.println("发现工具: " + callback.getName() + " - " + callback.getDescription());
        }
        
        return functionCallbacks;
    }
}
